A Sound Reduction Semantics for Untyped CBN Multi - Stage Computation . Or , the Theory of MetaML is Non - trivial

نویسنده

  • Walid Taha
چکیده

A multi-stage computation is one involving more than one stage of execution. MetaML is a language for programming multi-stage computations. Previous studies presented big-step semantics, categorical semantics, and sound type systems for MetaML. In this paper, we report on a conuent and sound reduction semantics for untyped call-by name (CBN) MetaML. The reduction semantics can be used to formally justify some optimization performed by a CBN MetaML implementation. The reduction semantics demonstrates that non-trivial equalities hold for object-code, even in the untyped setting. The paper also emphasizes that adding intensional analysis (that is, taking-apart object programs) to MetaML remains an interesting open problem.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Sound Reduction Semantics for Untyped Cbn Multi-stage Computation. Or, the Theory of Metaml Is Non-trivial (preliminary Report)

MetaML is a programming language that provides a good formalism for expressing multi-stage computation. Deening a reduction semantics for MetaML has been an illusive challenge. This paper presents a sound and strikingly simple reduction semantics for CBN MetaML that avoids the complexities and pitfalls of the previously proposed notion of \level-annotated terms". The novelty of this reduction s...

متن کامل

On the Denotational Semantics of Staged Execution of Open Code

The functional meta-programming language MetaML of Sheard et al contains explicit staging constructs for generating and executing code. It provides a much finer control over the order of computation than traditional languages with fixed-evaluation strategies. This paper presents a novel denotational semantics for untyped MetaML that provides a remarkably simple treatment of two semantically pro...

متن کامل

MetaML and multi-stage programming with explicit annotations

We introduce MetaML, a practically-motivated, staticallytyped multi-stage programming language. MetaML is a \real" language. We have built an implementation and used it to solve multi-stage problems. MetaML allows the programmer to construct, combine, and execute code fragments in a type-safe manner. Code fragments can contain free variables, but they obey the static-scoping principle. MetaML p...

متن کامل

Re ning Semantics for Multi-stage Programming

The multi-stage programming paradigm supports runtime code generation and execution. Though powerful, its potential is impeded by the lack of static analysis support. Van Horn and Might proposed a general-purpose approach to systematically develop static analyses by transforming an environmental abstract machine, which evolves a control string, an environment and a continuation as a program eva...

متن کامل

A duality between LM-fuzzy possibility computations and their logical semantics

Let X be a dcpo and let L be a complete lattice. The family σL(X) of all Scott continuous mappings from X to L is a complete lattice under pointwise order, we call it the L-fuzzy Scott structure on X. Let E be a dcpo. A mapping g : σL(E) −> M is called an LM-fuzzy possibility valuation of E if it preserves arbitrary unions. Denote by πLM(E) the set of all LM-fuzzy possibility valuations of E. T...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000